Back to index

An Elegant Puzzle: Systems of Engineering Management

Tags: #technology #engineering #management #leadership #organizational design #teams #culture #scaling #problem-solving

Authors: Will Larson

Overview

This book is a guide for engineering leaders who are navigating the complexities of building and scaling successful organizations. It’s not about finding one perfect way to manage, but rather about embracing the messy realities of leading teams and solving problems in dynamic environments. I’ve found that approaching engineering leadership as a series of interconnected puzzles, each requiring a unique approach, can help leaders navigate the ever-changing landscape of technology organizations. We’ll explore various tools and frameworks that I’ve found effective across a range of scenarios, from sizing teams to managing technical debt, from driving organizational change to fostering inclusive cultures. 1. Organizational Design: Building a Scalable Foundation. Effective organizational design is essential for scaling teams and ensuring clear decision-making. This involves finding the optimal size for engineering teams, striking a balance between manager bandwidth and engineer autonomy. Also crucial is understanding how to avoid disrupting high-performing teams when reallocating resources, and instead focusing on shifting scope between teams. 2. Essential Tools for Effective Management: Leveraging Systems Thinking, Metrics, and Visions. Engineering leadership requires a toolbox of techniques for driving change and achieving alignment. Systems thinking encourages viewing organizational challenges as interconnected systems, allowing you to identify high-leverage points for impactful changes. Metrics and baselines provide a framework for setting clear goals, measuring progress, and ensuring balanced improvement. Vision and strategy documents help align teams around shared goals and provide a framework for navigating complex challenges. 3. Cultivating a Thriving Culture: Fostering Inclusion, Collaboration, and Growth. Building an inclusive organization involves providing equal access to opportunity and ensuring that individuals feel a sense of belonging. It requires thoughtful programs and policies that promote diversity, facilitate collaboration, and create a sense of psychological safety. We’ll also explore the pitfalls of ‘hero culture’ and the importance of building sustainable systems that empower everyone to contribute effectively. 4. Navigating Your Career: Embracing Change and Finding Opportunities for Growth. Career growth in engineering leadership is less about climbing a fixed ladder and more about embracing change and actively shaping your path. By understanding your unique strengths, aligning your goals with company priorities, and continuously learning from your experiences, you can navigate the dynamic world of technology organizations and find opportunities that align with your aspirations. 5. Practical Approaches for Everyday Challenges: Saying No, Working the Policy, and Finding Your Scope. This book also delves into practical approaches for handling everyday challenges faced by engineering leaders. Learning to say no effectively, working the policy instead of the exceptions, and finding the right scope for your role are essential skills for driving impact and maintaining your sanity. Remember, engineering leadership is not about finding one perfect solution but rather about continuously iterating and adapting your approach to fit the ever-changing landscape.

Book Outline

2. Organizations

This chapter addresses the crucial role of organizational design in engineering management. Getting the right people in the right roles and empowering them to make decisions is paramount for scalability. We delve into the optimal sizing of engineering teams, emphasizing the balance between team size, manager bandwidth, and efficient on-call rotations. Remember, smaller teams often lack the abstraction and resilience of larger ones.

Key concept: Managers should support six to eight engineers. This ensures they have enough time for coaching, coordinating, and advancing the team’s goals. Similarly, managers-of-managers should support four to six managers for effective coaching and organizational investment.

2. Organizations

This section tackles the challenge of guiding teams toward high performance, particularly in rapidly growing organizations. It introduces a framework for understanding team states and the corresponding system fixes to help them progress. Remember, durable excellence comes from consistent, systemic changes, not quick fixes.

Key concept: Teams typically go through four states: falling behind, treading water, repaying debt, and innovating. Each state requires a distinct system-level solution, such as hiring for falling behind teams or consolidating efforts for treading water teams. Resist the urge to apply tactical support without addressing the underlying system.

2. Organizations

This section cautions against disrupting high-performing teams for the sake of global optimization. It emphasizes the importance of team cohesion and the long-term cost of re-gelling teams after personnel changes. Shifting scope between teams, rather than individuals, often proves more effective and less disruptive.

Key concept: Avoid top-down reallocation of individuals to optimize for global priorities. Instead, focus on shifting scope between stable, high-performing teams. This preserves team cohesion and avoids disrupting team dynamics while addressing organizational needs.

2. Organizations

This section focuses on succession planning as a crucial skill for building enduring organizations. It outlines a process for identifying the various facets of your role and creating a plan to delegate those responsibilities, ensuring the organization can thrive even in your absence.

Key concept: Succession planning means thinking about how the organization would function without you, documenting the gaps, and starting to fill them. This involves understanding the nuances of your role, identifying potential successors for each responsibility, and creating a plan to close the gaps.

3. Tools

This chapter explores essential tools for managing change in growing organizations, starting with systems thinking. This approach encourages viewing organizational challenges as interconnected systems, allowing you to identify high-leverage points for impactful changes. Remember, small changes can have significant downstream effects within a system.

Key concept: Systems thinking is a powerful tool for understanding how various parts of an organization interact and influence each other. Stocks, representing accumulations like the number of trained managers, and flows, representing changes to stocks like hiring, help model these complex dynamics. This helps identify leverage points for impactful change.

3. Tools

This section provides a simplified framework for engineering leaders who find themselves stepping into product management roles. It introduces a cyclical process of problem discovery, problem selection, and solution validation as a guide for effective product development. Remember, even without extensive product management experience, you can leverage this framework to drive successful outcomes.

Key concept: Product management can be viewed as an iterative elimination tournament. It involves problem discovery (identifying potential user needs and opportunities), problem selection (narrowing down to a viable subset), and solution validation (testing the cheapest way to validate the chosen approach). This cyclical process guides product development towards successful outcomes.

3. Tools

This section emphasizes the importance of vision and strategy documents for aligning teams and individuals, especially in larger organizations. While strategies focus on addressing specific challenges, visions articulate a long-term direction, providing a shared understanding and guiding principles for decision-making. Remember, these documents serve as powerful tools for achieving alignment at scale.

Key concept: Strategies are grounded documents that detail the actions and tradeoffs to address specific challenges, while visions paint an aspirational picture of the future, helping align decisions across individuals and teams. Both are powerful tools for achieving alignment at scale, especially as an organization grows and communication becomes more complex.

3. Tools

This section offers a framework for setting effective goals using metrics and baselines. Good goals are measurable, with clear targets, baselines, trends, and timeframes. Remember, it’s crucial to pair investment goals, which focus on future aspirations, with baseline metrics to safeguard existing strengths and prevent unintended consequences.

Key concept: Good goals consist of a target, a baseline, a trend, and a timeframe, making them measurable and actionable. Pair investment goals, which focus on future aspirations, with baseline metrics, which preserve current properties, to ensure balanced progress. This helps prevent unintended consequences while driving organizational improvement.

3. Tools

This section underscores the significance of migrations in tackling technical debt. Well-executed migrations are crucial for organizational velocity, and involve a three-step process: de-risking, enabling, and finishing. Remember, the focus should be on completing migrations effectively, as partially finished migrations can lead to significant technical debt.

Key concept: Migrations are the primary mechanism to address technical debt and often become the bottleneck for organizational velocity. Effective migrations involve de-risking (validating the solution and addressing potential challenges upfront), enabling (creating self-service tooling and documentation for teams), and finishing (fully deprecating legacy systems). Remember, celebrate the completion of migrations, not just their initiation.

5. Culture

This section encourages a shift in mindset: treat your peer managers as your primary team. This approach promotes collaboration, shared learning, and a broader understanding of organizational challenges. Remember, by prioritizing the success of your peers, you contribute to a culture of collective growth and ultimately enhance your own success.

Key concept: Treat your peers as your first team. This means being aware of their work, understanding their motivations and challenges, and prioritizing their success alongside your own. This shift in perspective fosters a culture of collaboration and shared learning, accelerating both your personal growth and the success of the organization.

5. Culture

This section explores the pitfalls of ‘hero culture’ and the detrimental effects of over-reliance on individual hero programmers. While seemingly productive in the short term, this approach leads to burnout, resentment, and unsustainable project outcomes. Instead, focus on building systems that empower everyone to contribute and prioritize long-term sustainability over short-term gains.

Key concept: Hero programmers, while seemingly productive in the short term, create long-term problems by alienating others, burning themselves out, and leaving projects in a precarious state. Instead of pushing individuals to work harder, focus on building sustainable systems that empower everyone to contribute effectively. Kill your heroes; stop doing it harder.

Essential Questions

1. How does the author propose structuring engineering teams for optimal size and performance?

Effective organizational design hinges on striking the right balance in team sizing. Managers should ideally support 6-8 engineers to allow for effective coaching and project oversight, while managers-of-managers should oversee 4-6 managers. On-call rotations necessitate a minimum of eight engineers for two-tier 24/7 support. These guidelines promote a balance between team cohesion, efficient communication, and individual growth opportunities.

2. What is the author’s stance on optimizing for global priorities versus maintaining high-performing teams, and what approach does he recommend?

The author argues against top-down global optimization, emphasizing the value of stable, high-performing teams. Disrupting team dynamics through individual reassignments can lead to significant re-gelling costs. Instead, shifting project scope between teams, while preserving team composition, proves more effective. This ensures continuity, minimizes disruptions, and allows teams to leverage their existing expertise.

3. What is the author’s proposed framework for managing technical debt, and how does it contribute to organizational velocity?

The author advocates for a proactive approach to managing technical debt through migrations. Effective migrations involve a three-step process: de-risking (thoroughly validating the solution and addressing potential challenges before rollout), enabling (building self-service tooling and documentation to empower teams), and finishing (fully deprecating the legacy systems). This approach minimizes disruptions, ensures smooth transitions, and prevents the accumulation of technical debt.

4. How does the author connect company culture to organizational values, and what strategies does he propose for fostering an inclusive environment?

The author emphasizes the importance of viewing company culture as a reflection of the organization’s values and actions. To foster an inclusive culture, he recommends focusing on two key areas: opportunity (ensuring access to professional growth and development) and membership (creating a sense of belonging). He advocates for structured processes, transparent decision-making, and dedicated programs that promote diversity, mentorship, and employee resource groups.

5. What is the author’s perspective on ‘hero programmers,’ and what alternative approach does he advocate for achieving sustainable success?

The author challenges the romanticized notion of ‘hero programmers’ and the ‘work harder’ mentality. He argues that this approach, while seemingly effective in the short term, leads to burnout, resentment, and ultimately hinders long-term success. He advocates for a shift toward building sustainable systems that empower everyone to contribute effectively, rather than relying on individual heroics. This requires addressing underlying organizational problems and fostering a collaborative environment where individuals can thrive without sacrificing their well-being.

Key Takeaways

1. Embrace a broader view of career growth that goes beyond traditional career ladders.

Career growth shouldn’t be limited to climbing a single, linear ladder. Encourage individuals to explore a broader range of skills and experiences, aligning their personal growth with the company’s needs. This approach creates more opportunities for individuals to learn, contribute, and find fulfilling career paths.

Practical Application:

During performance reviews, guide team members to identify skills they’d like to develop, even if those skills aren’t directly applicable to their current role. Help them find opportunities within existing projects to practice and refine those skills, broadening their skillset and preparing them for future growth.

2. Learn to say ‘no’ effectively by clearly communicating your team’s constraints and priorities.

Saying ‘no’ effectively requires clearly articulating your team’s constraints and priorities. Use visual tools and data to illustrate your team’s workflow, capacity, and the impact of adding new tasks. This facilitates a more constructive dialogue and allows for better alignment with stakeholders.

Practical Application:

When an urgent request comes in that conflicts with existing priorities, take time to articulate your team’s current constraints, using a visual representation like a kanban board to illustrate the workflow and bottlenecks. This helps stakeholders understand the impact of adding new work and facilitates a more collaborative discussion about prioritization.

3. Reduce interruptions to improve team focus and productivity, even in rapidly growing organizations.

Organizations struggle with distractions, and reducing interruptions is essential for maximizing team productivity and focus. The key is to funnel distractions into a manageable space and then automate as much as possible. This frees up the team’s time and mental energy for the important work.

Practical Application:

If your team is struggling with recurring interruptions, try funneling those interruptions into a central system, such as a ticketing system or a designated communication channel. Then work on automating that system as much as possible, using tools like chatbots or self-service documentation, to minimize disruptions and free up the team’s time for focused work.

Suggested Deep Dive

Chapter: Tools

The ‘Tools’ chapter provides valuable frameworks for engineering leaders, particularly in the context of AI product engineering. Concepts like systems thinking are crucial for understanding complex systems, and their application to team dynamics, hiring processes, and even product management is particularly relevant to AI engineers who often work on highly complex products and need to navigate intricate organizational structures.

Memorable Quotes

Organizations. 26

I believe that excellent organizations grow from consistently applying a straightforward process.

A Case Against Top-Down Global Optimization. 41

Fundamentally, I believe that sustained productivity comes from high-performing teams, and that disassembling a high-performing team leads to a significant loss of productivity, even if the members are fully retained.

Productivity in the Age of Hypergrowth. 54

My favorite observation from The Phoenix Project by Gene Kim, Kevin Behr, and George Spafford is that you only get value from projects when they finish: to make progress, above all else, you must ensure that some of your projects finish.

Tools. 70

In management, change is the catalyst of complexity.

Saying No. 167

It was in that era of my career that I came to view management as, at its core, a moral profession. We have the opportunity to create an environment for those around us to be their best, in fair surroundings.

Comparative Analysis

Compared to other works on engineering management, “An Elegant Puzzle” stands out for its focus on systems thinking and organizational design as foundational principles. It aligns with books like “The Manager’s Path” by Camille Fournier in emphasizing the human aspects of leadership, but goes deeper into the structural elements that enable effective management at scale. It diverges from more prescriptive guides by embracing the notion that there is no single ‘right way’ to manage, and encourages readers to adapt their approach based on their unique circumstances. It also shares a kinship with books like “Thinking in Systems” by Donella Meadows in advocating for a holistic view of organizational challenges, recognizing the interconnectedness of various components and the potential for unintended consequences. However, “An Elegant Puzzle” goes further by grounding these abstract concepts in the practical realities of engineering organizations.

Reflection

While “An Elegant Puzzle” offers valuable insights into engineering management, it is important to recognize its potential limitations. The author’s experiences are heavily influenced by his time in high-growth technology companies, and some of the proposed solutions may not be directly applicable to all organizational contexts. Additionally, the book’s focus on systems thinking, while a powerful framework, could lead to an overly mechanistic view of human behavior and organizational dynamics. It is crucial to remember that individuals and teams are complex entities, and a nuanced understanding of their motivations and aspirations is essential for effective leadership. Nevertheless, “An Elegant Puzzle” provides a valuable framework for approaching engineering management, encouraging a more thoughtful and data-driven approach to leadership. The author’s emphasis on building sustainable systems, cultivating healthy cultures, and investing in individual growth makes this book a valuable resource for any engineering leader, particularly those navigating the challenges of building and scaling rapidly growing organizations. However, it’s important to adapt the book’s principles to your specific context and avoid applying the proposed solutions as prescriptive rules.

Flashcards

What is the ideal number of engineers for a manager to support?

6-8 engineers

What is a less disruptive alternative to reassigning individuals for global optimization?

Shifting project scope between existing teams.

What are the three key phases of an effective migration?

De-risking, enabling, and finishing.

What are the two pillars of an inclusive organization?

Opportunity and Membership

What is the author’s mantra for guiding decision-making?

Your company, your team, yourself - in that order

What does succession planning involve?

Documenting gaps and proactively delegating responsibilities.

Start by stabilizing individual teams and then scale to the organization level.